Dynomotion

Group: DynoMotion Message: 7189 From: roa_controls Date: 4/6/2013
Subject: intermittent crash
Hi Tom,
A few months ago I posted the question below on CNCZone. I'm still having the problem. I'm now running 430h in VB6. I'm sure the problem is something I'm doing wrong. I was never able to get events working in VB6 so I poll for everything. In my VB6 program while the gcode is executing I am polling for job complete with "CheckDoneBuf". I also have a timer event running polling for positions every 100ms. If these 2 calls to the KFLOP happened at, or about, the same time could that cause the problem?
Thanks You, Shannon


Question posted on CNCZone:
"In about 1 in 20 jobs I get a strange Kflop crash. While interpreting gcode the z axis will suddenly dive and stall the x or y axis which causes a following error. After this happens, the kflop will still respond to jog commands but not properly. If I try to move Z up it jerks down. Same with the x, y they both move but jerk in the negative direction, even when I command positive. A soft reintialization of the board does not help. The only way to recover is to power cycle the board."
Group: DynoMotion Message: 7191 From: Tom Kerekes Date: 4/6/2013
Subject: Re: intermittent crash
Hi Shannon,

Polling things should not cause a crash.  There are Mutexes and Tokens built into the libraries to coordinate things.  But Polling CheckDoneBuf will not really tell you when the GCode finished.  It will be true whenever there isn't any coordinated motion.  So for example during a G0 Rapid move it will be true.

But regarding the crash: It might give some clues to do a post mortem after the crash and investigate what is working and what isn't.  For example run KMotion and look at the Axis enables, Destinations, Positions.  Upload each axis to the KMotion Screens and chech the Config, Step, and Filter screens to see if the settings are still correct.  Then re-initialize and try to make a move and see what happens.  Does the destination change?  Do the axes stay enabled?  Any messages? 

Also if you post your configuration and Application I can look it over for you.

You might try the latest version 4.31c.

Sorry that's ll I can think of.
Regards
TK


Group: DynoMotion Message: 7193 From: roa_controls Date: 4/7/2013
Subject: Re: intermittent crash
Thanks Tom, I will try post mortem next time it happens. I noticed CheckDoneBuf was not working quite right. I just waited for it to stay true for a second or so and it did what I needed. What would be a better way to determine when the gcode is finished executing?
Shannon

--- In DynoMotion@yahoogroups.com, Tom Kerekes <tk@...> wrote:
>
> Hi Shannon,
>
> Polling things should not cause a crash.  There are Mutexes and Tokens built into the libraries to coordinate things.  But Polling CheckDoneBuf will not really tell you when the GCode finished.  It will be true whenever there isn't any coordinated motion.  So for example during a G0 Rapid move it will be true.
>
> But regarding the crash: It might give some clues to do a post mortem after the crash and investigate what is working and what isn't.  For example run KMotion and look at the Axis enables, Destinations, Positions.  Upload each axis to the KMotion Screens and chech the Config, Step, and Filter screens to see if the settings are still correct.  Then re-initialize and try to make a move and see what happens.  Does the destination change?  Do the axes stay enabled?  Any messages? 
>
> Also if you post your configuration and Application I can look it over for you.
>
> You might try the latest version 4.31c.
>
> Sorry that's ll I can think of.
> Regards
> TK
>
>
>
>
> ________________________________
> From: roa_controls <sdavenport.roa@...>
> To: DynoMotion@yahoogroups.com
> Sent: Saturday, April 6, 2013 7:39 AM
> Subject: [DynoMotion] intermittent crash
>
>
>  
> Hi Tom,
> A few months ago I posted the question below on CNCZone. I'm still having the problem. I'm now running 430h in VB6. I'm sure the problem is something I'm doing wrong. I was never able to get events working in VB6 so I poll for everything. In my VB6 program while the gcode is executing I am polling for job complete with "CheckDoneBuf". I also have a timer event running polling for positions every 100ms. If these 2 calls to the KFLOP happened at, or about, the same time could that cause the problem?
> Thanks You, Shannon
>
> Question posted on CNCZone:
> "In about 1 in 20 jobs I get a strange Kflop crash. While interpreting gcode the z axis will suddenly dive and stall the x or y axis which causes a following error. After this happens, the kflop will still respond to jog commands but not properly. If I try to move Z up it jerks down. Same with the x, y they both move but jerk in the negative direction, even when I command positive. A soft reintialization of the board does not help. The only way to recover is to power cycle the board."
>
Group: DynoMotion Message: 7194 From: TK Date: 4/7/2013
Subject: Re: intermittent crash
Hi Shannon,

I can't think of an easy way to poll if the Interpreter is running. That is what the Interpreter Complete Callback is for. I suppose you could modify the Interpreter to set a flag in its complete function. Then export a function to return the flag. 

Regards
TK

On Apr 7, 2013, at 7:32 AM, "roa_controls" <sdavenport.roa@...> wrote:

 

Thanks Tom, I will try post mortem next time it happens. I noticed CheckDoneBuf was not working quite right. I just waited for it to stay true for a second or so and it did what I needed. What would be a better way to determine when the gcode is finished executing?
Shannon

--- In DynoMotion@yahoogroups.com, Tom Kerekes <tk@...> wrote:
>
> Hi Shannon,
>
> Polling things should not cause a crash.  There are Mutexes and Tokens built into the libraries to coordinate things.  But Polling CheckDoneBuf will not really tell you when the GCode finished.  It will be true whenever there isn't any coordinated motion.  So for example during a G0 Rapid move it will be true.
>
> But regarding the crash: It might give some clues to do a post mortem after the crash and investigate what is working and what isn't.  For example run KMotion and look at the Axis enables, Destinations, Positions.  Upload each axis to the KMotion Screens and chech the Config, Step, and Filter screens to see if the settings are still correct.  Then re-initialize and try to make a move and see what happens.  Does the destination change?  Do the axes stay enabled?  Any messages? 
>
> Also if you post your configuration and Application I can look it over for you.
>
> You might try the latest version 4.31c.
>
> Sorry that's ll I can think of.
> Regards
> TK
>
>
>
>
> ________________________________
> From: roa_controls <sdavenport.roa@...>
> To: DynoMotion@yahoogroups.com
> Sent: Saturday, April 6, 2013 7:39 AM
> Subject: [DynoMotion] intermittent crash
>
>
>  
> Hi Tom,
> A few months ago I posted the question below on CNCZone. I'm still having the problem. I'm now running 430h in VB6. I'm sure the problem is something I'm doing wrong. I was never able to get events working in VB6 so I poll for everything. In my VB6 program while the gcode is executing I am polling for job complete with "CheckDoneBuf". I also have a timer event running polling for positions every 100ms. If these 2 calls to the KFLOP happened at, or about, the same time could that cause the problem?
> Thanks You, Shannon
>
> Question posted on CNCZone:
> "In about 1 in 20 jobs I get a strange Kflop crash. While interpreting gcode the z axis will suddenly dive and stall the x or y axis which causes a following error. After this happens, the kflop will still respond to jog commands but not properly. If I try to move Z up it jerks down. Same with the x, y they both move but jerk in the negative direction, even when I command positive. A soft reintialization of the board does not help. The only way to recover is to power cycle the board."
>